package com.ytjj.qmyx.users.client;

import com.ytjj.common.api.CommonResult;
import com.ytjj.qmyx.users.model.circle.*;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

@FeignClient("qmyx-circle")
public interface CircleClient {
    @PostMapping("/circleActivity/save")
    CommonResult save(@RequestBody CircleActivityInfoRequest request);

    @PostMapping("/circleActivity/list")
    CommonResult list(@RequestBody CircleActivityInfoQueryRequest request);

    @PostMapping("/circleActivity/detail")
    CommonResult detail(@Validated @RequestBody CircleActivityDetailRequest request);
    @PostMapping("/circleActivity/productList")
    CommonResult productList(@RequestBody CircleActivityProductListRequest request);

    @PostMapping(value = "/product/list")
    CommonResult circleProductList(@RequestBody ProductRequest product);

    /**
     * 申请列表
     * @return
     */
    @PostMapping("/circleMainRole/applyList")
    CommonResult getAllApplyList(@RequestBody CircleMainRoleApplyQueryRequest request);

    /**
     * 团长列表
     * @param request
     * @return
     */
    @PostMapping("/circleMainRole/mainList")
    CommonResult getMainList(@RequestBody CircleMainRoleApplyQueryRequest request);

    /**
     * 团长订单列表
     * @return
     */
    @PostMapping("/circleMainRole/orderList")
    CommonResult queryOrderList(@RequestBody CircleMainRoleOrderListRequest request);

    /**
     * 团长状态变更
     * @param request
     * @return
     */
    @PostMapping("/circleMainRole/check")
    CommonResult check(@RequestBody CircleMainRoleCheckRequest request);
}
